/***********************************************************************
 * 描述:		文件传输设置类。
 * File:    ftcsettings.h
 * Author:  liquan@mozihealthcare.cn
 * Date:    2025-10-13
 * Update:
 **********************************************************************/

#ifndef FTCSETTINGS_H
#define FTCSETTINGS_H

#include <QString>

class FtcSettings
{
public:
	/**
	 * 设置文件服务根地址
	 * @param rootUrl 文件服务根地址
	 */
	static void setRootUrl(const QString& rootUrl);
	/**
	 * 获取连接超时时长
	 * @return 连接超时时长(毫秒)
	 */
	static long connectTimeout();
	/**
	 * 设置连接超时时长
	 * @param timeout 连接超时时长(毫秒)
	 */
	static void setConnectTimeout(long timeout);
	/**
	 * 获取总超时时长
	 * @return 总超时时长(毫秒)
	 */
	static long requestTimeout();
	/**
	 * 设置总超时时长
	 * @param timeout 总超时时长(毫秒)
	 */
	static void setRequestTimeout(long timeout);
	/**
	 * 获取预热地址
	 * @return 预热地址
	 */
	static QString pathHeartBeat();
	/**
	 * 获取文件查询路径
	 * @return 文件查询路径
	 */
	static QString pathFileInfo();
	/**
	 * 获取文件上传路径
	 * @return 文件上传路径
	 */
	static QString pathUpload();
	/**
	 * 获取文件覆盖上传路径
	 * @return 文件覆盖上传路径
	 */
	static QString pathReUpload();

private:
	/**
	 * 获取http地址
	 * @param path http地址
	 * @return 完整的http地址
	 */
	static QString getHttpUrl(QString path);
};


#endif//FTCSETTINGS_H
